Arduino বোর্ডে থাকা Analog Pins হল এমন পিন যা এনালগ সিগনাল পড়তে সক্ষম। এই পিনগুলো এনালগ ভোল্টেজ ইনপুটকে ডিজিটাল মানে রূপান্তরিত করে, যা বোর্ডের মাইক্রোকন্ট্রোলার দ্বারা প্রক্রিয়াকৃত হয়। এনালগ পিন ব্যবহার করে বিভিন্ন সেন্সর থেকে ডেটা সংগ্রহ করা এবং সেই ডেটা ব্যবহার করে প্রয়োজনীয় কাজ করা যায়।
Analog Pins একটি নির্দিষ্ট ভোল্টেজ রেঞ্জের মধ্যে সিগনাল গ্রহণ করে এবং এই ভোল্টেজের মানকে ডিজিটাল মানে রূপান্তরিত করে। Arduino Uno-এর ক্ষেত্রে এনালগ ইনপুট ভোল্টেজ ০ ভোল্ট থেকে ৫ ভোল্টের মধ্যে হতে পারে এবং এটি ১০-বিটের এনালগ-টু-ডিজিটাল কনভার্টার (ADC) ব্যবহার করে ০ থেকে ১০২৩ পর্যন্ত মানে রূপান্তর করে।
analogRead()
ফাংশন ০ মান প্রদান করবে।analogRead()
ফাংশন ১০২৩ মান প্রদান করবে।analogRead()
ফাংশন প্রায় ৫১২ মান প্রদান করবে।Analog Pins বিভিন্ন সেন্সর এবং ডিভাইস থেকে ডেটা ইনপুট নেওয়ার জন্য ব্যবহৃত হয়। এই পিনগুলো সাধারণত A0
, A1
, A2
, ইত্যাদি নামে পরিচিত। Arduino বোর্ডে, যেমন Arduino Uno, ছয়টি এনালগ পিন (A0-A5) পাওয়া যায়।
একটি LDR (Light Dependent Resistor) ব্যবহার করে আলোর তীব্রতা মাপা যায়। এটি একটি এনালগ সেন্সর যা আলোর তীব্রতার উপর ভিত্তি করে ভোল্টেজের মান পরিবর্তন করে।
void setup() {
Serial.begin(9600); // সিরিয়াল কমিউনিকেশন শুরু
}
void loop() {
int lightLevel = analogRead(A0); // LDR থেকে ইনপুট পড়া
Serial.print("Light Level: ");
Serial.println(lightLevel); // মান সিরিয়াল মনিটরে দেখানো
delay(500); // ৫০০ মিলিসেকেন্ড অপেক্ষা
}
এই কোডের মাধ্যমে বোর্ড LDR থেকে আলোর মাত্রা পড়ে এবং সিরিয়াল মনিটরে দেখায়। আলো বাড়লে বা কমলে রিডিং পরিবর্তিত হবে।
Arduino-তে এনালগ মানকে সরাসরি ভোল্টেজে রূপান্তর করতে হলে একটি সাধারণ সূত্র ব্যবহার করা হয়:
float voltage = analogValue * (5.0 / 1023.0);
এখানে analogValue
হলো analogRead()
ফাংশনের মাধ্যমে প্রাপ্ত মান।
যদি analogRead()
থেকে প্রাপ্ত মান ৫১২ হয়, তাহলে ভোল্টেজ হবে:
float voltage = 512 * (5.0 / 1023.0); // প্রায় 2.5 ভোল্ট
Analog Pins ব্যবহার করে নানাবিধ সেন্সরের ডেটা পড়া যায়, যেমন:
ADC (Analog to Digital Converter) হল একটি গুরুত্বপূর্ণ উপাদান যা এনালগ সিগনালকে ডিজিটাল মানে রূপান্তর করে। Arduino Uno-এর ADC ১০-বিটের, যার মানে ০ থেকে ১০২৩ পর্যন্ত ১০২৪টি ধাপে ভোল্টেজ রূপান্তর করা হয়।
analogReference()
ফাংশনের মাধ্যমে।analogReference()
ফাংশনএটি ব্যবহার করে ADC-এর রেফারেন্স ভোল্টেজ নির্ধারণ করা যায়, যা নির্ভুল মান পেতে সহায়তা করে।
void setup() {
analogReference(INTERNAL); // 1.1V রেফারেন্স ব্যবহার
}
Analog Pins-এর কাজ এবং কার্যকারিতা বোঝা Arduino-তে বিভিন্ন ধরনের সেন্সর এবং ডিভাইস থেকে ডেটা পড়ার জন্য অত্যন্ত গুরুত্বপূর্ণ। এটি ব্যবহারকারীদের তাদের প্রকল্পে আরও সঠিকভাবে ডেটা সংগ্রহ এবং প্রক্রিয়াকরণের সুযোগ দেয়।
common.read_more